#ifndef ICPECONFIG_H
#define ICPECONFIG_H

#include "../CpePluginManager/cpedefine.h"
#include <QObject>
#include <QString>

class ICpeConfig
{
public:
	virtual ~ICpeConfig() = default;

	/**
	 * @brief setProperty   写入属性
	 * @param strVendor     厂家名称
	 * @param eType         属性类型
	 * @param strValue      属性值
	 */
	virtual void setProperty(const QString& strVendor, CpeEmLoginInputType eType, const QString& strValue) = 0;

	/**
	 * @brief getProperty   读取属性
	 * @param strVendor     厂家名称
	 * @param eType         属性类型
	 * @return              属性值
	 */
	virtual QString getProperty(const QString& strVendor, CpeEmLoginInputType eType) = 0;

	/**
	 * @brief setProperty   写入属性
	 * @param strVendor     厂家名称
	 * @param eType         属性类型
	 * @param strValue      属性值
	 */
	virtual void setProperty(const QString& strKey, const QString& strValue) = 0;

	/**
	 * @brief getProperty   读取属性
	 * @param strVendor     厂家名称
	 * @param eType         属性类型
	 * @return              属性值
	 */
	virtual QString getProperty(const QString& strKey) = 0;
};

QT_BEGIN_NAMESPACE
Q_DECLARE_INTERFACE(ICpeConfig, "com.kk.cpemanager.icpeconfig")
QT_END_NAMESPACE

#endif
